home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format CD 23 / Amiga Format AFCD23 (Feb 1998, Issue 107).iso / -seriously_amiga- / shareware / programming / other / hunk / hoppers / silver.hop < prev    next >
Text File  |  1997-12-01  |  3KB  |  65 lines

  1. ;*************************************************************************
  2. ;** Silver MULU                                                         **
  3. ;** Contributor: L.Lucius                               Nov 15th  1995  **
  4. ;** Modified for HOp:   Thomas Richter  (thor)          Nov  1st  1997  **
  5. ;** Function:    Modify 68000 math routines to use 68020+ instructions. **
  6. ;*************************************************************************
  7.  
  8.  
  9. ;*************************************************************************
  10. ;
  11. ; MULU
  12. ;
  13. ;
  14. #match
  15. #code
  16. 48E7 3C00                       ;   MOVEM.L     D2-D5,-(A7)
  17. 4205                            ;   CLR.B       D5
  18. 4A80                            ;   TST.L       D0
  19. 6A04                            ;   BPL.B       000E
  20. 4605                            ;   NOT.B       D5
  21. 4480                            ;   NEG.L       D0
  22. 4A81                            ;   TST.L       D1
  23. 6A04                            ;   BPL.B       0016
  24. 4605                            ;   NOT.B       D5
  25. 4481                            ;   NEG.L       D1
  26. 3400                            ;   MOVE.W      D0,D2
  27. 3601                            ;   MOVE.W      D1,D3
  28. 4840                            ;   SWAP        D0
  29. 4841                            ;   SWAP        D1
  30. 3803                            ;   MOVE.W      D3,D4
  31. C8C2                            ;   MULU.W      D2,D4
  32. C6C0                            ;   MULU.W      D0,D3
  33. C4C1                            ;   MULU.W      D1,D2
  34. C2C0                            ;   MULU.W      D0,D1
  35. D682                            ;   ADD.L       D2,D3
  36. 2003                            ;   MOVE.L      D3,D0
  37. 4240                            ;   CLR.W       D0
  38. 4840                            ;   SWAP        D0
  39. 4843                            ;   SWAP        D3
  40. 4243                            ;   CLR.W       D3
  41. D883                            ;   ADD.L       D3,D4
  42. D181                            ;   ADDX.L      D1,D0
  43. 4840                            ;   SWAP        D0
  44. 4240                            ;   CLR.W       D0
  45. 4244                            ;   CLR.W       D4
  46. 4844                            ;   SWAP        D4
  47. 8084                            ;   OR.L        D4,D0
  48. 4A05                            ;   TST.B       D5
  49. 6702                            ;   BEQ.B       0048
  50. 4480                            ;   NEG.L       D0
  51. 4CDF 003C                       ;   MOVEM.L     (A7)+,D2-D5
  52. 4E75                            ;   RTS
  53. ;
  54. ;
  55. #replace
  56. 4C00 1C00                       ;   MULS.L      D0,D0:D1
  57. E180                            ;   ASL.L       #8,D0
  58. E180                            ;   ASL.L       #8,D0
  59. 9241                            ;   SUB.W       D1,D1
  60. 4841                            ;   SWAP        D1
  61. 8081                            ;   OR.L        D1,D0
  62. 4E75                            ;   RTS
  63. #end
  64.  
  65.